|
CATIA V5 Programmierung : Punkt selektieren und als Referenz weitergeben
dabaeda am 18.04.2007 um 11:41 Uhr (0)
Hallo zusammen,als Anfänger im Programmieren, wollte ich zunächst einmal folgendes Problem lösen: Benutzer soll Punkt selektieren, dieser soll dann als Referenz für eine Ebene dienen.Nun habe ich folgendes programmiert:Sub CATMain()3D-Werkzeugkasten deklarieren-----------------------------Dim MeinPart as Partset MeinPart=CATIA.ActiveDocument.PartDim Wzk3D as HybridshapeFactorySet Wzk3D=MeinPart.HybridShapeFactoryGeöffneten Körper deklarien------------------------------dim Hbody as hybridbodyset Hbody=MeinP ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
dabaeda am 08.05.2007 um 14:00 Uhr (0)
Hallo,vielleicht hat jmd ne Idee dazu:ich möchte den Winkel zwischen einer Linie(line) und einer anderen Linie(projection) messen, und dann in Excel abspeichern. Beide Linien sind nicht in einem Sketch, sondern als 3D-Geometrie in einem Geoset.1.Mit welchem Befehl kann man denn Winkel messen?2.Wie kann ich dann die Winkel weitergeben? Später muss ich viele Winkel (automatisch) messen, und diese dann als txt-File speichern.Beim speichern von koordinaten habe ich das bisher so gemacht: Zitat:Redim aCoord(2)d ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
dabaeda am 09.05.2007 um 11:26 Uhr (0)
Danke für den Tip, leider funkt das nicht ganz.Folgenden Code habe ich: Zitat:Dim angle1Dim TheSPAWorkbench As Workbench Set TheSPAWorkbench = CATIA.ActiveDocument.GetWorkbench ( "SPAWorkbench" ) Dim TheMeasurable As Measurable Set TheMeasurable = TheSPAWorkbench.Measurable(RefPtRichtung) Hier liegt der Fehlerangle1 = TheMeasurable.GetAngleBetween(RefProjektionNormale(0))Fehlerbewschreibung: Das Objekt unterstürtz diese Eigenschaft/Methode nicht.:TheSPAWorkbench.MeasurableStimmt das mit der referenz was n ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
dabaeda am 09.05.2007 um 15:40 Uhr (0)
Hm, werde das morgen gleich mal probieren und das Ergebnis hier dann posten.In der VB-Hilfe von Catia ist das ohne Get gestanden, deswegen hatte ich das nicht reingeschrieben.Vielen Danke nochmal für die Hinweise.
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
dabaeda am 10.05.2007 um 10:19 Uhr (0)
Nun hat es geklappt (fast).Mit dem Code: Zitat:Dim angle(100)Dim TheSPAWorkbench As Workbench Set TheSPAWorkbench = CATIA.ActiveDocument.GetWorkbench ( "SPAWorkbench" ) Dim TheMeasurable(100) As Measurable dim zaehler as doublefor zaehler=1 to 10 Hier liegt ein Problem Set TheMeasurable(zaehler) = TheSPAWorkbench.GetMeasurable(RefPtRichtung(zaehler)) angle(zaehler) = TheMeasurable(zaehler).GetAngleBetween(RefProjektionNormale(zaehler))nextHabe ich nun folgendes Problem:Schreibe ich: for zaehler=1 to 9, d ...
|
In das Form CATIA V5 Programmierung wechseln |
|
CATIA V5 Programmierung : Winkel zwischen 2 Linien messen
dabaeda am 10.05.2007 um 12:06 Uhr (0)
Habe den Fehler gefunden:scheinbar kommt Catia nicht mit RefPtRichtung(10) und RefProjektionNormale(10) in dem Ausdruck klar, auch nicht wenn ich in der ersten Schleife nur bis 9 zähle, und ein einer seperaten Schleife dann die 10 erzeuge.Lösung:RefPtRichtung(10) in RefPtRichtung(11) (bei anderer Referenz analog) umbenannt und folgenden Code eingefügt: Zitat:dim bThemeasurable as Measurableset bTheMeasurable = TheSPAWorkbench.GetMeasurable (RefPtRichtung(11))angle(10) = bTheMeasurable.GetAngleBetween(RefPr ...
|
In das Form CATIA V5 Programmierung wechseln |